CherryPick DI — di библиотека для dart/flutter проектов

CherryPick DI

DI-контейнер – это библиотека, которая обеспечивает функциональность механизма внедрения зависимостей.

Содержание

1. Предисловие

2. Возможности библиотеки

3. Компоненты библиотеки

— 3.1. Scope

— 3.2. Module

— 3.3. Binding

4. Пример использования

5. Заключение

1. Предисловие

Первые попытки разработать свой DI для пет проектов написанных на Flutter SDK были начаты в начале 2020 года.

Сподвигло меня на этот шаг несколько причин:

1. На тот момент я не нашел DI в pub.dev с возможностью делить контейнер на scope (возможно плохо искал)

2. Упростить работу с зависимостями в проекте

3. Желание написать собственный DI

4. Иметь в арсенале простой DI (надеюсь с простым API)

2. Возможности библиотеки

Основные возможности DI контейнера:

— Инициализация экземпляра с именем

— Инициализация экземпляра как singleton

— Разделение контейнера на области видимости (scopes)

3. Основные компоненты DI

Библиотека состоит из трех основных компонентов:

— Scope

— Module

— Binding

3.1. Scope

Scope — это

Читать далее